<template>
  <component :is="component" :style="{ fontSize: fontSize }" />
</template>

<script lang="ts" setup>
import { resolveDynamicComponent } from "vue";

interface Props {
  icon: string;
  fontSize?: string; // 可选的 fontSize 属性
}

const props = defineProps<Props>();

const component = computed(() => resolveDynamicComponent(`icon-${props.icon}`));
const fontSize = computed(() => props.fontSize || "18px");
</script>
